In recent years, OTT-V (Over The Top Video) has become the mainstream of streaming service that uses the Internet. As an internationally standardized moving image delivery protocol that can be used for OTT-V, there is known MPEG-DASH (Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP; hereinafter, referred to as DASH) that uses the same HTTP as that for browsing Web sites (see, for example, Non-Patent Document 1).
In DASH, an adaptive streaming technique is implemented. Specifically, a content supplier prepares and delivers a plurality of streams of the same content with different bit rates for different image qualities, different angle-of-view sizes, etc. On the other hand, a content receiver selects an optimal stream from among the plurality of streams prepared by the supplier, according to a communication environment, decoding capability thereof, etc., and receives and plays back the selected stream, and further switches the stream being received to another according to a change in the communication environment, etc.
Note that the supplier supplies a metafile called an MPD (Media Presentation Description) to the receiver so that the receiver can adaptively select, receive, and play back a stream.
The MPD describes an address (url information) of a WEB server (supply source) that supplies files of segment streams where content streams (media data such as Audio/Video/Subtitle) are chunked, in response to a request from the receiver. Based on the url information, the receiver accesses the WEB server serving as the content supply source, to request a file of a segment stream (hereinafter, also referred to as segment file), and receives and plays back the segment file which is HTTP-unicast from the server in response to the request.
FIG. 1 shows an example of a configuration of a content supply system that streams content based on DASH.
This content supply system 10 is composed of a plurality of content supply apparatuses 20 that supply content; and multiple DASH clients 30 that receive and play back the content. The DASH clients 30 can be connected to the content supply apparatuses 20 through a CDN (Contents Delivery Network) 12 that uses Internet 11.
Each content supply apparatus 20 delivers a plurality of streams of content of the same content with different bit rates. The content supply apparatus 20 includes a content management server 21, a DASH segment streamer 22, and a DASH MPD server 23.
The content management server 21 manages source data of content to be delivered to the DASH clients 30, and generates a plurality of pieces of streaming data with different bit rates from the source data, and outputs the plurality of pieces of streaming data to the DASH segment streamer 22.
The DASH segment streamer 22 divides each piece of streaming data into segments in a temporal manner, and thereby generates a segment stream, e.g., fragmented MP4, and converts the generated segment stream into a file format and holds the file. Furthermore, in response to an HTTP request from a DASH client 30 to request a segment file, the DASH segment streamer 22 HTTP-unicasts, as a WEB server, the segment file held therein to the request source. Furthermore, the DASH segment streamer 22 notifies the DASH MPD server 23 of metadata including an address indicating a supply source of the segment files.
The DASH MPD server 23 generates an MPD that describes, for example, the address indicating the supply source (i.e., the DASH segment streamer 22) of the segment files. In addition, in response to an HTTP request from the DASH client 30 to request an MPD, the DASH MPD server 23 HTTP-unicasts, as a WEB server, the generated MPD to the request source.
On the other hand, a DASH client 30 requests the DASH MPD server 23 for an MPD, and obtains the MPD which is HTTP-unicast in response to the request. Furthermore, based on the obtained MPD, the DASH client 30 requests the DASH segment streamer 22 for a segment file, and receives and plays back the segment file which is HTTP-unicast in response to the request.
Note that the CDN 12 includes a proxy server (not shown), and the proxy server caches MPDs and segment files which are HTTP-unicast through the CDN 12. Then, in response to a request from a DASH client 30, the proxy server can HTTP-unicast a cached MPD or segment file to the request source, instead of the DASH MPD server 23 or the DASH segment streamer 22 which serves as a WEB server.